home *** CD-ROM | disk | FTP | other *** search
/ PCMania 30 / PCMania CD30.iso / pcmania / magia30 / programa.bas
BASIC Source File  |  1995-02-19  |  3KB  |  98 lines

  1. 'Este programa calcula la dinámica de la civilización Maya
  2. SCREEN 12
  3.  
  4. 'Significado de las constantes y variables
  5. 'alc:  Vida media de la población
  6. 'alm:  Vida media de los monumentos
  7. 'ampc: Media de monumentos por persona
  8. 'c:    Población
  9. 'cbr:  Tasa de natalidad
  10. 'cdr:  Tasa de mortalidad
  11. 'cfp:  Población dedicada a la producción de alimentos
  12. 'cmc:  Población dedicada a construir monumentos
  13. 'cpc:  Construcción por persona
  14. 'dmpc: Monumentos demandados por persona
  15. 'fcmc: Fracción de población dedicada a construir monumentos
  16. 'fp:   Producción de alimentos
  17. 'fpc:  Comida por persona
  18. 'ircmc:Indicador de la fracción de población dedicada a construir monumentos
  19. 'm:    Número de monumentos
  20. 'mcr:  Tasa de construcción de monumentos
  21. 'mdr:  Tasa de destrucción de monumentos
  22. 'mhl:  Nivel sanitario de la población
  23. 'mpc:  Monumentos por persona
  24. 'rcmc: Fracción de población dedicada a construir monumentos
  25. 'tampc:Tiempo para promediar los monumentos por persona
  26. 'tcr:  Tiempo para cambiar la rcmc
  27.  
  28. '****************************
  29. 'Se asignan valores iniciales a las variables de las cuatro ecuaciones
  30. 'diferenciales
  31. 'Población inicial
  32. c = 4000000
  33. 'Número de monumentos inicial
  34. m = 1000
  35. 'Fracción de población inicial dedicada a construir monumentos
  36. rcmc = .25
  37. 'Media inicial de monumentos por persona
  38. ampc = .00025
  39. '****************************
  40. 'Se asignan valores a las constantes y variables de las ecuaciones
  41. 'Las constantes que empiezan por n corresponden a los valores normales de
  42. 'la variable que hay después de la n
  43. alm = 1000     'años
  44. nalc = 25      'años
  45. ncfp = 3300000 'personas
  46. ncpc = .00025  'monumentos/persona
  47. ncbr = .041    'personas/personas/año
  48. nfp = 9.2E+08  'kg/año
  49. nfpc = 230     'kg/persona/año
  50. nmpc = .00025  'monumentos/persona
  51. tampc = 20     'años
  52. tcr = 75       'años
  53.  
  54. 'Frecuencia con la que se calculan las ecuaciones diferenciales
  55. f = .1
  56.  
  57. 'Bucle principal
  58. FOR t = 1 TO 550
  59.         'Se calculan las variables auxiliares
  60.         fcmc = rcmc / (rcmc + 1)
  61.         cfp = c * (1 - fcmc)
  62.         fp = cfp / ncfp
  63.         fpc = fp * nfp / c
  64.         mhl = fpc / nfpc
  65.         alc = nalc * mhl
  66.         cbr = c * ncbr
  67.         cdr = c / alc
  68.         cmc = c * fcmc
  69.         cpc = ncpc * mhl
  70.         mcr = cmc * cpc
  71.         mdr = m / alm
  72.         dmpc = nmpc * mhl
  73.         ircmc = rcmc * ampc / dmpc
  74.         mpc = m / c
  75.         '********************
  76.         'Primera ecuación diferencial
  77.         c = c + (cbr - cdr) * f
  78.         IF c < 0 THEN c = 0: EXIT FOR
  79.         '********************
  80.         'Segunda ecuación diferencial
  81.         m = m + (mcr - mdr) * f
  82.         '********************
  83.         'Tercera ecuación diferencial
  84.         rcmc = rcmc + ((ircmc - rcmc) / tcr) * f
  85.         '********************
  86.         'Cuarta ecuación diferencial
  87.         ampc = ampc + ((mpc - ampc) / tampc) * f
  88.        
  89.         'Se imprimen las curvas
  90.         LINE (1, 300)-(550, 300)
  91.         LINE (1, 300)-(1, 100)
  92.         PSET (t, 300 - c / 30000), 1
  93.         PSET (t, 300 - m / 70), 2
  94. NEXT
  95. LOCATE 22, 2: PRINT "Población final: "; INT(c)
  96. LOCATE 23, 2: PRINT "Número de monumentos: "; INT(m)
  97.  
  98.